package com.taosdata.jdbc.springbootdemo.mapper.tdengine.stableMapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.taosdata.jdbc.springbootdemo.domain.stables.SuperTable;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;

import javax.annotation.Resource;
import java.util.List;

/**
 * @author zhmsky
 * @date 2022/9/25 14:23
 */
@Mapper
@Resource
public interface StableMapper extends BaseMapper<SuperTable> {

    /**
     * 批量插入
     * @param superTable 第一个数据实体
     * @param list 批量插入的list
     * @param stableName 超级表名
     * @param subTableName 子表名
     */
    void insertBatchCommonData(@Param("superTable") SuperTable superTable, @Param("list") List<SuperTable> list, @Param("stableName") String stableName, @Param("subTableName") String subTableName);

    /**
     * 创建超级表
     *
     * @param staleName
     */
    @Update("CREATE STABLE IF NOT EXISTS ${staleName} " +
            "(ts timestamp, dataValue float) TAGS (constructionId VARCHAR(32),monitorTypeId VARCHAR(32), sensorId VARCHAR(32))")
    void createStable(String staleName);


}